The invention relates generally to a storage system, a storage device and a data updating method, and it is particularly suitable for application in, for example, a storage device managing data backup or restoration in a storage system.
Conventionally, as a technique for data backup or restoring, for example, there are known techniques to restore data at any given point in time: by combining a technique to restore data by retrieving the snapshot of a logical volume and using the snapshot (hereinafter referred to as the “snapshot technique”); and by retrieving the journal of a logical volume and using the journal (hereinafter referred to as the “journal technique”).
A snapshot is the image of a logical volume at a certain point in time. Also, a journal is the history of data written to a logical volume.
According to the snapshot technique, normally the snapshot itself can be used as restored data, so data can be restored in a short time. However, since many snapshots are necessary to be retrieved in order to restore data at any time over many points in time, that will cause a heavy workload in the system.
On the other hand, according to the journal technique, even when data needs to be restored at any time over many points in time, only the journal written to a logical volume has to be recorded, so the workload will be smaller than the snapshot technique. However, in order to restore data at a certain point in the past, all data at every point up to that certain point in the past needs to be recorded in order, so it usually takes longer than the snapshot technique.
Recently, a technique to operate the snapshot technique and the journal technique by switching them depending on the situation has been suggested (see 2007-080131 A).
As a technique of this sort, there is a CDP (Continuous Data Protection) technique in which data at any given point in time can be restored by chronologically backing up update data for every piece of write data as journal(s). As an example of the CDP, data at a certain point in the past (hereinafter referred to as the “recovery point”) is held as a base volume, update data (a journal) is arbitrarily applied to the base volume, and thereby data at any given point in time is restored.
However, there is a problem where, when a time period from a recovery point to recovery point extends over a long period of time, a journal volume capacity for storing journals has to be expanded in accordance with the aforementioned time period even though there is the period during which data restoration is not necessary.
When using snapshots, there is also a problem where volume capacity has to be expanded in accordance with the number of generations for which snapshots are implemented even though there is the period during which data restoration is not necessary.
As described above, in conventional techniques, data in the period during which data restoration is not necessary for a user is also capable of being restored, and data in that period cannot be deleted, so there is a problem where logical volume capacity cannot be used effectively.